[INFO] cloning repository https://github.com/heyaranzheng/history-chain
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/heyaranzheng/history-chain" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fheyaranzheng%2Fhistory-chain", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fheyaranzheng%2Fhistory-chain'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 5e4bf0395136d20e686f6d3c2f467d345e78711e
[INFO] fixing heyaranzheng/history-chain against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=start=2015 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fheyaranzheng%2Fhistory-chain" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/heyaranzheng/history-chain
[INFO] finished tweaking git repo https://github.com/heyaranzheng/history-chain
[INFO] tweaked toml for git repo https://github.com/heyaranzheng/history-chain written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/heyaranzheng/history-chain on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "generate-lockfile" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]      Locking 231 packages to latest Rust 1.98.0-nightly compatible versions
[INFO] [stderr]       Adding bincode v2.0.1 (available: v3.0.0)
[INFO] [stderr]       Adding generic-array v0.14.7 (available: v0.14.9)
[INFO] [stderr]       Adding rand v0.8.6 (available: v0.10.1)
[INFO] [stderr]       Adding sha2 v0.10.9 (available: v0.11.0)
[INFO] [stderr]       Adding sqlx v0.8.6 (available: v0.9.0)
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded redox_syscall v0.8.1
[INFO] [stderr]   Downloaded defmt v1.1.0
[INFO] [stderr]   Downloaded unty v0.0.4
[INFO] [stderr]   Downloaded defmt-parser v1.0.0
[INFO] [stderr]   Downloaded bincode_derive v2.0.1
[INFO] [stderr]   Downloaded defmt-macros v1.1.0
[INFO] [stderr]   Downloaded jiff-static v0.2.29
[INFO] [stderr]   Downloaded virtue v0.0.18
[INFO] [stderr]   Downloaded bincode v2.0.1
[INFO] [stderr]   Downloaded jiff v0.2.29
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea
[INFO] running `Command { std: "docker" "start" "50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=start=2015", kill_on_drop: false }`
[INFO] [stderr]    Compiling quote v1.0.46
[INFO] [stderr]    Compiling icu_normalizer_data v2.2.0
[INFO] [stderr]    Compiling icu_properties_data v2.2.0
[INFO] [stderr]     Checking memchr v2.8.2
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling writeable v0.6.3
[INFO] [stderr]    Compiling litemap v0.8.2
[INFO] [stderr]     Checking typenum v1.20.1
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling pin-project-lite v0.2.17
[INFO] [stderr]    Compiling syn v2.0.118
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]    Compiling foldhash v0.1.5
[INFO] [stderr]    Compiling once_cell v1.21.4
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling tracing-core v0.1.36
[INFO] [stderr]    Compiling form_urlencoded v1.2.2
[INFO] [stderr]     Checking futures-channel v0.3.32
[INFO] [stderr]     Checking generic-array v0.14.7
[INFO] [stderr]    Compiling concurrent-queue v2.5.0
[INFO] [stderr]    Compiling zmij v1.0.21
[INFO] [stderr]    Compiling crc-catalog v2.5.0
[INFO] [stderr]    Compiling zerocopy v0.8.52
[INFO] [stderr]    Compiling hashbrown v0.17.1
[INFO] [stderr]     Checking log v0.4.33
[INFO] [stderr]    Compiling semver v1.0.28
[INFO] [stderr]    Compiling futures-io v0.3.32
[INFO] [stderr]     Checking crypto-common v0.1.7
[INFO] [stderr]     Checking block-buffer v0.10.4
[INFO] [stderr]    Compiling futures-task v0.3.32
[INFO] [stderr]     Checking slab v0.4.12
[INFO] [stderr]     Checking digest v0.10.7
[INFO] [stderr]    Compiling parking v2.2.1
[INFO] [stderr]    Compiling itoa v1.0.18
[INFO] [stderr]    Compiling futures-sink v0.3.32
[INFO] [stderr]    Compiling event-listener v5.4.1
[INFO] [stderr]    Compiling serde_json v1.0.150
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling rustc_version v0.4.1
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling futures-intrusive v0.5.0
[INFO] [stderr]    Compiling hashlink v0.10.0
[INFO] [stderr]    Compiling crc v3.4.0
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking bytes v1.12.0
[INFO] [stderr]    Compiling autocfg v1.5.1
[INFO] [stderr]     Checking regex-syntax v0.8.11
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling curve25519-dalek v4.1.3
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking mio v1.2.1
[INFO] [stderr]     Checking socket2 v0.6.4
[INFO] [stderr]     Checking signature v2.2.0
[INFO] [stderr]    Compiling virtue v0.0.18
[INFO] [stderr]     Checking zeroize v1.9.0
[INFO] [stderr]     Checking anstream v1.0.0
[INFO] [stderr]     Checking ed25519 v2.2.3
[INFO] [stderr]     Checking unty v0.0.4
[INFO] [stderr]     Checking jiff v0.2.29
[INFO] [stderr]     Checking uuid v1.23.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling bincode_derive v2.0.1
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]     Checking bincode v2.0.1
[INFO] [stderr]     Checking regex v1.12.4
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.6
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling zerofrom v0.1.8
[INFO] [stderr]    Compiling yoke v0.8.3
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling curve25519-dalek-derive v0.1.1
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking env_filter v1.0.1
[INFO] [stderr]     Checking rand v0.8.6
[INFO] [stderr]     Checking env_logger v0.11.10
[INFO] [stderr]     Checking tokio v1.52.3
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]     Checking icu_provider v2.2.0
[INFO] [stderr]     Checking icu_normalizer v2.2.0
[INFO] [stderr]     Checking icu_properties v2.2.0
[INFO] [stderr]     Checking ed25519-dalek v2.2.0
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking either v1.16.0
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling idna_adapter v1.2.2
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling sqlx-core v0.8.6
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]    Compiling sqlx-macros-core v0.8.6
[INFO] [stderr]    Compiling sqlx-macros v0.8.6
[INFO] [stderr]     Checking sqlx v0.8.6
[INFO] [stderr]     Checking history-chain v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/db.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncSeekExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/db.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/db.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/db.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainLimit`, `ChainRef`, and `self`
[INFO] [stdout]   --> src/db.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::chain::{self, ChainLimit, BlockChain, ChainRef, ChainInfoBuilder, Chain};
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^              ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataBlockArgs`, `DataBlock`, `DigestBlockArgs`, and `DigestBlock`
[INFO] [stdout]   --> src/db.rs:16:27
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::block::{Block, DataBlock, DataBlockArgs, DigestBlock, DigestBlockArgs};
[INFO] [stdout]    |                           ^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/db.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::serializer::{self, Serialize, Serializer};
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]  --> src/network/tcp.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::net::{TcpStream, TcpListener};
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/network/tcp.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::sync:: {Mutex, };
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/tcp.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/network/tcp.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]  --> src/network/tcp.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/network/tcp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_CONNECTIONS` and `TCP_RECV_PORT`
[INFO] [stdout]  --> src/network/tcp.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::constants::{TCP_RECV_PORT, MAX_CONNECTIONS};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/tcp.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/network/tcp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/tcp.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::signal::Signal`
[INFO] [stdout]   --> src/network/tcp.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::network::signal::Signal;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/network/udp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/udp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `create_channel`
[INFO] [stdout]   --> src/network/udp.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::req_resp::{RequestWorker, Request, create_channel};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHANNEL_CAPACITY` and `ZERO_HASH`
[INFO] [stdout]   --> src/network/udp.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::constants::{ CHANNEL_CAPACITY,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, UDP_CHECK_PORT, ZERO_HASH,
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/network/udp.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::herrors::{HError, self};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]   --> src/network/udp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::nodes::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::encode`
[INFO] [stdout]    --> src/network/udp.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |     use sqlx::encode;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::time::timeout`
[INFO] [stdout]    --> src/network/udp.rs:224:9
[INFO] [stdout]     |
[INFO] [stdout] 224 |     use tokio::time::timeout;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]    --> src/network/udp.rs:225:9
[INFO] [stdout]     |
[INFO] [stdout] 225 |     use tokio_util::sync::CancellationToken;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_UDP_MSG_SIZE` and `ZERO_HASH`
[INFO] [stdout]    --> src/network/udp.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     use crate::constants::{ZERO_HASH, MAX_UDP_MSG_SIZE};
[INFO] [stdout]     |                            ^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]    --> src/network/udp.rs:228:26
[INFO] [stdout]     |
[INFO] [stdout] 228 |     use crate::network::{Message, Payload};
[INFO] [stdout]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]    --> src/network/udp.rs:229:9
[INFO] [stdout]     |
[INFO] [stdout] 229 |     use crate::nodes::Identity;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/network/network.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/network/network.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]   --> src/network/network.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::network::protocol::{Message, Payload};
[INFO] [stdout]    |                                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/network.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     use crate::network::udp::UdpConnection;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/network/protocol.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr`
[INFO] [stdout]  --> src/network/protocol.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config`
[INFO] [stdout]  --> src/network/protocol.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::{Decode, Encode, config};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/network/protocol.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite,};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]  --> src/network/protocol.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/protocol.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/network/protocol.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_MSG_SIZE`
[INFO] [stdout]   --> src/network/protocol.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::{MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, ZERO_HASH};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]   --> src/network/protocol.rs:14:40
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::nodes::{Identity, NodeInfo, SignRequest, SignHandle};
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/protocol.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::network::udp::UdpConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/protocol.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::io::AsyncSeekExt`
[INFO] [stdout]    --> src/network/protocol.rs:647:9
[INFO] [stdout]     |
[INFO] [stdout] 647 |     use tokio::io::AsyncSeekExt;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `network::signal` and `nodes::SignHandle`
[INFO] [stdout]    --> src/network/protocol.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |     use crate::{network::signal, nodes::SignHandle};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Decode` and `Encode`
[INFO] [stdout]    --> src/network/protocol.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                   ^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/network/protocol.rs:652:9
[INFO] [stdout]     |
[INFO] [stdout] 652 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/register.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `Worker`
[INFO] [stdout]   --> src/network/register.rs:12:63
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::req_resp::{self, Request, RequestWorker, Response, WorkReceiver, Worker};
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/network/register.rs:433:9
[INFO] [stdout]     |
[INFO] [stdout] 433 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/network/register.rs:435:9
[INFO] [stdout]     |
[INFO] [stdout] 435 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::new`
[INFO] [stdout]    --> src/network/register.rs:437:9
[INFO] [stdout]     |
[INFO] [stdout] 437 |     use crate::fpsc::new;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]    --> src/network/register.rs:438:9
[INFO] [stdout]     |
[INFO] [stdout] 438 |     use crate::herrors::HError;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]    --> src/network/register.rs:439:26
[INFO] [stdout]     |
[INFO] [stdout] 439 |     use crate::network::{Message, Payload};
[INFO] [stdout]     |                          ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `Response`
[INFO] [stdout]    --> src/network/register.rs:440:27
[INFO] [stdout]     |
[INFO] [stdout] 440 |     use crate::req_resp::{Request, RequestWorker, Response};
[INFO] [stdout]     |                           ^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/handlers.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Identity`
[INFO] [stdout]  --> src/network/handlers.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Identity, NodeInfo};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]  --> src/network/handlers.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::pipe::Pipe;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Message`
[INFO] [stdout]   --> src/network/handlers.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{Message, Payload, PayloadTypes};
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `Response`
[INFO] [stdout]   --> src/network/handlers.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::req_resp::{RequestWorker, Response, Request};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/nodes/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRegister`
[INFO] [stdout]   --> src/nodes/node.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, udp_send_to}; 
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Block`, `Carrier`, and `Digester`
[INFO] [stdout]   --> src/nodes/node.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                    ^^^^^  ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainExecutor` and `Executor`
[INFO] [stdout]   --> src/nodes/node.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::executor::{Executor, ChainExecutor};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::archive::Archiver`
[INFO] [stdout]   --> src/nodes/node.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::archive::Archiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_error`
[INFO] [stdout]   --> src/nodes/node.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::herrors::{HError, logger_error, logger_error_with_error, self};
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `self`
[INFO] [stdout]   --> src/nodes/node.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::req_resp::{self, RequestWorker, WorkReceiver, create_channel, Request};
[INFO] [stdout]    |                       ^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/center.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/center.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/center.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/center.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Node, NodeState, Reputation};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/normal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/normal.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/normal.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/normal.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::nodes::node::{Node, NodeState, Reputation};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/nodes/identity.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Receiver`
[INFO] [stdout]  --> src/nodes/identity.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{self, Sender, Receiver};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::MAX_UDP_MSG_SIZE`
[INFO] [stdout]   --> src/nodes/identity.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::MAX_UDP_MSG_SIZE;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/nodes/identity.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/nodes/identity.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `NodeAppend`
[INFO] [stdout]  --> src/nodes/mod.rs:6:55
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub use node::{Node, NodeInfo, NodeState, Reputation, NodeAppend};
[INFO] [stdout]   |                                                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/executor.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/executor.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::block::{ Block, BlockArgs, Carrier, DataBlockArgs, DigestBlockArgs, Digester };
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/executor.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainInfo`
[INFO] [stdout]  --> src/executor.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::chain::{Chain, BlockChain, ChainInfo, ChainLimit};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/constants.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/producer_cosumer.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                 ^^^^^^^^^^                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:369:21
[INFO] [stdout]     |
[INFO] [stdout] 369 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:371:9
[INFO] [stdout]     |
[INFO] [stdout] 371 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:306:21
[INFO] [stdout]     |
[INFO] [stdout] 306 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:308:9
[INFO] [stdout]     |
[INFO] [stdout] 308 |     use super::*;
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/fpsc/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::producer_cosumer::ConsumerBuf`
[INFO] [stdout]   --> src/fpsc/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use crate::fpsc::producer_cosumer::ConsumerBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc`
[INFO] [stdout]   --> src/fpsc/mod.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 40 |     use crate::fpsc;
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constants::ZERO_HASH`
[INFO] [stdout]  --> src/hash.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{constants::ZERO_HASH, herrors::HError}; 
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/block.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::uuidbytes::{self, UuidBytes};
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainLimit`
[INFO] [stdout]  --> src/block.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::chain::{BlockChain, ChainLimit};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLockReadGuard`, `RwLockWriteGuard`, and `RwLock`
[INFO] [stdout]  --> src/keeper.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/keeper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/keeper.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]  --> src/keeper.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]   |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/keeper.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/keeper.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DigestBlockArgs`
[INFO] [stdout]   --> src/keeper.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::block::{Block, Digester, Carrier, DigestBlockArgs};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/keeper.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainInfo`, and `ChainRef`
[INFO] [stdout]   --> src/keeper.rs:12:39
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::chain::{BlockChain, Chain, ChainInfo, ChainInfoBuilder, ChainRef, ChainLimit,
[INFO] [stdout]    |                                       ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/archive.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/db.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncSeekExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::env`
[INFO] [stdout]  --> src/db.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use std::env;
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/db.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/db.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainLimit`, `ChainRef`, and `self`
[INFO] [stdout]   --> src/db.rs:15:20
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::chain::{self, ChainLimit, BlockChain, ChainRef, ChainInfoBuilder, Chain};
[INFO] [stdout]    |                    ^^^^  ^^^^^^^^^^              ^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DataBlockArgs`, `DigestBlockArgs`, and `DigestBlock`
[INFO] [stdout]   --> src/db.rs:16:38
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::block::{Block, DataBlock, DataBlockArgs, DigestBlock, DigestBlockArgs};
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^  ^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/db.rs:18:25
[INFO] [stdout]    |
[INFO] [stdout] 18 | use crate::serializer::{self, Serialize, Serializer};
[INFO] [stdout]    |                         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Duration`
[INFO] [stdout]    --> src/db.rs:566:27
[INFO] [stdout]     |
[INFO] [stdout] 566 |         use tokio::time::{Duration, Instant};
[INFO] [stdout]     |                           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TcpListener` and `TcpStream`
[INFO] [stdout]  --> src/network/tcp.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::net::{TcpStream, TcpListener};
[INFO] [stdout]   |                  ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Mutex`
[INFO] [stdout]  --> src/network/tcp.rs:2:20
[INFO] [stdout]   |
[INFO] [stdout] 2 | use tokio::sync:: {Mutex, };
[INFO] [stdout]   |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/tcp.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/network/tcp.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]  --> src/network/tcp.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::net::SocketAddr`
[INFO] [stdout]  --> src/network/tcp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::SocketAddr;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `MAX_CONNECTIONS` and `TCP_RECV_PORT`
[INFO] [stdout]  --> src/network/tcp.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::constants::{TCP_RECV_PORT, MAX_CONNECTIONS};
[INFO] [stdout]   |                        ^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/tcp.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/network/tcp.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/tcp.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::signal::Signal`
[INFO] [stdout]   --> src/network/tcp.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::network::signal::Signal;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/network/udp.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/udp.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `create_channel`
[INFO] [stdout]   --> src/network/udp.rs:10:23
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::req_resp::{RequestWorker, Request, create_channel};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^  ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CHANNEL_CAPACITY` and `ZERO_HASH`
[INFO] [stdout]   --> src/network/udp.rs:11:25
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::constants::{ CHANNEL_CAPACITY,
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 12 |     MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, UDP_CHECK_PORT, ZERO_HASH,
[INFO] [stdout]    |                                                     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]   --> src/network/udp.rs:14:30
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::herrors::{HError, self};
[INFO] [stdout]    |                              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::nodes::Identity`
[INFO] [stdout]   --> src/network/udp.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::nodes::Identity;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `sqlx::encode`
[INFO] [stdout]    --> src/network/udp.rs:223:9
[INFO] [stdout]     |
[INFO] [stdout] 223 |     use sqlx::encode;
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ZERO_HASH`
[INFO] [stdout]    --> src/network/udp.rs:227:28
[INFO] [stdout]     |
[INFO] [stdout] 227 |     use crate::constants::{ZERO_HASH, MAX_UDP_MSG_SIZE};
[INFO] [stdout]     |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/network/network.rs:4:31
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/network/network.rs:34:9
[INFO] [stdout]    |
[INFO] [stdout] 34 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Message` and `Payload`
[INFO] [stdout]   --> src/network/network.rs:35:36
[INFO] [stdout]    |
[INFO] [stdout] 35 |     use crate::network::protocol::{Message, Payload};
[INFO] [stdout]    |                                    ^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/network.rs:36:9
[INFO] [stdout]    |
[INFO] [stdout] 36 |     use crate::network::udp::UdpConnection;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::mem::MaybeUninit`
[INFO] [stdout]  --> src/network/protocol.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::mem::MaybeUninit;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SocketAddr`
[INFO] [stdout]  --> src/network/protocol.rs:2:16
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{SocketAddr};
[INFO] [stdout]   |                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `config`
[INFO] [stdout]  --> src/network/protocol.rs:3:31
[INFO] [stdout]   |
[INFO] [stdout] 3 | use bincode::{Decode, Encode, config};
[INFO] [stdout]   |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRead`
[INFO] [stdout]  --> src/network/protocol.rs:5:46
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite,};
[INFO] [stdout]   |                                              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::net::TcpStream`
[INFO] [stdout]  --> src/network/protocol.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::net::TcpStream;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/network/protocol.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_MSG_SIZE`
[INFO] [stdout]   --> src/network/protocol.rs:10:24
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::{MAX_MSG_SIZE, MAX_UDP_MSG_SIZE, ZERO_HASH};
[INFO] [stdout]    |                        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]   --> src/network/protocol.rs:14:40
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::nodes::{Identity, NodeInfo, SignRequest, SignHandle};
[INFO] [stdout]    |                                        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::udp::UdpConnection`
[INFO] [stdout]   --> src/network/protocol.rs:15:5
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::network::udp::UdpConnection;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]   --> src/network/protocol.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use crate::pipe::Pipe;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `network::signal`
[INFO] [stdout]    --> src/network/protocol.rs:649:17
[INFO] [stdout]     |
[INFO] [stdout] 649 |     use crate::{network::signal, nodes::SignHandle};
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Decode`
[INFO] [stdout]    --> src/network/protocol.rs:650:19
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                   ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors`
[INFO] [stdout]  --> src/network/register.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::herrors;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `Worker`
[INFO] [stdout]   --> src/network/register.rs:12:63
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::req_resp::{self, Request, RequestWorker, Response, WorkReceiver, Worker};
[INFO] [stdout]    |                                                               ^^^^^^^^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::thread::sleep`
[INFO] [stdout]    --> src/network/register.rs:433:9
[INFO] [stdout]     |
[INFO] [stdout] 433 |     use std::thread::sleep;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::new`
[INFO] [stdout]    --> src/network/register.rs:437:9
[INFO] [stdout]     |
[INFO] [stdout] 437 |     use crate::fpsc::new;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Message`
[INFO] [stdout]    --> src/network/register.rs:439:26
[INFO] [stdout]     |
[INFO] [stdout] 439 |     use crate::network::{Message, Payload};
[INFO] [stdout]     |                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker` and `Response`
[INFO] [stdout]    --> src/network/register.rs:440:36
[INFO] [stdout]     |
[INFO] [stdout] 440 |     use crate::req_resp::{Request, RequestWorker, Response};
[INFO] [stdout]     |                                    ^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]  --> src/network/handlers.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio_util::sync::CancellationToken;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Identity`
[INFO] [stdout]  --> src/network/handlers.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Identity, NodeInfo};
[INFO] [stdout]   |                    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::pipe::Pipe`
[INFO] [stdout]  --> src/network/handlers.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::pipe::Pipe;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Message`
[INFO] [stdout]   --> src/network/handlers.rs:10:22
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{Message, Payload, PayloadTypes};
[INFO] [stdout]    |                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker`, `Request`, and `Response`
[INFO] [stdout]   --> src/network/handlers.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::req_resp::{RequestWorker, Response, Request};
[INFO] [stdout]    |                       ^^^^^^^^^^^^^  ^^^^^^^^  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/network/handlers.rs:79:9
[INFO] [stdout]    |
[INFO] [stdout] 79 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio_util::sync::CancellationToken`
[INFO] [stdout]   --> src/network/handlers.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     use tokio_util::sync::CancellationToken;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::register::*`
[INFO] [stdout]   --> src/network/handlers.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     use crate::network::register::*;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `nodes::*`
[INFO] [stdout]   --> src/network/handlers.rs:82:17
[INFO] [stdout]    |
[INFO] [stdout] 82 |     use crate::{nodes::*};
[INFO] [stdout]    |                 ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/network/handlers.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     use crate::herrors::HError;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `tokio::task::spawn`
[INFO] [stdout]  --> src/nodes/node.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use tokio::task::spawn;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncRegister`
[INFO] [stdout]   --> src/nodes/node.rs:10:57
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, udp_send_to}; 
[INFO] [stdout]    |                                                         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Carrier` and `Digester`
[INFO] [stdout]   --> src/nodes/node.rs:11:27
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                           ^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainExecutor` and `Executor`
[INFO] [stdout]   --> src/nodes/node.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::executor::{Executor, ChainExecutor};
[INFO] [stdout]    |                       ^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::archive::Archiver`
[INFO] [stdout]   --> src/nodes/node.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::archive::Archiver;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_error`
[INFO] [stdout]   --> src/nodes/node.rs:15:30
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::herrors::{HError, logger_error, logger_error_with_error, self};
[INFO] [stdout]    |                              ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `WorkReceiver` and `self`
[INFO] [stdout]   --> src/nodes/node.rs:19:23
[INFO] [stdout]    |
[INFO] [stdout] 19 | use crate::req_resp::{self, RequestWorker, WorkReceiver, create_channel, Request};
[INFO] [stdout]    |                       ^^^^                 ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `SignRequest`
[INFO] [stdout]    --> src/nodes/node.rs:733:46
[INFO] [stdout]     |
[INFO] [stdout] 733 |     use crate::nodes::identity::{SignHandle, SignRequest, Identity};
[INFO] [stdout]     |                                              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `logger_info`
[INFO] [stdout]    --> src/nodes/node.rs:734:34
[INFO] [stdout]     |
[INFO] [stdout] 734 |     use crate::herrors::{HError, logger_info};
[INFO] [stdout]     |                                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RequestWorker` and `Request`
[INFO] [stdout]    --> src/nodes/node.rs:735:27
[INFO] [stdout]     |
[INFO] [stdout] 735 |     use crate::req_resp::{Request, RequestWorker};
[INFO] [stdout]     |                           ^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/center.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/center.rs:5:27
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/center.rs:6:30
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/center.rs:8:20
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::nodes::{Node, NodeState, Reputation};
[INFO] [stdout]   |                    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/nodes/normal.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/nodes/normal.rs:4:27
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::block::{Block, BlockArgs, Carrier, Digester};
[INFO] [stdout]   |                           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]  --> src/nodes/normal.rs:5:30
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::hash::{HashValue, Hasher};
[INFO] [stdout]   |                              ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Node`
[INFO] [stdout]  --> src/nodes/normal.rs:6:26
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::nodes::node::{Node, NodeState, Reputation};
[INFO] [stdout]   |                          ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::Path`
[INFO] [stdout]  --> src/nodes/identity.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use std::path::Path;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Receiver`
[INFO] [stdout]  --> src/nodes/identity.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use tokio::sync::mpsc::{self, Sender, Receiver};
[INFO] [stdout]   |                                       ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::constants::MAX_UDP_MSG_SIZE`
[INFO] [stdout]   --> src/nodes/identity.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::constants::MAX_UDP_MSG_SIZE;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]   --> src/nodes/identity.rs:12:5
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::hash::HashValue;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::network::Message`
[INFO] [stdout]   --> src/nodes/identity.rs:13:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::network::Message;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/executor.rs:5:25
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `BlockArgs`
[INFO] [stdout]  --> src/executor.rs:7:28
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::block::{ Block, BlockArgs, Carrier, DataBlockArgs, DigestBlockArgs, Digester };
[INFO] [stdout]   |                            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/executor.rs:8:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainInfo`
[INFO] [stdout]  --> src/executor.rs:9:39
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::chain::{Chain, BlockChain, ChainInfo, ChainLimit};
[INFO] [stdout]   |                                       ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::hash::HashValue`
[INFO] [stdout]  --> src/constants.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use crate::hash::HashValue;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/producer_cosumer.rs:1:17
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                 ^^^^^^^^^^                            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt` and `AsyncWriteExt`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:369:21
[INFO] [stdout]     |
[INFO] [stdout] 369 |     use tokio::io::{AsyncReadExt, AsyncWriteExt};
[INFO] [stdout]     |                     ^^^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncWriteExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:40
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncReadExt`, `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/fpsc/mod.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | use tokio::io::{AsyncReadExt, AsyncWriteExt, AsyncRead, AsyncWrite};
[INFO] [stdout]   |                 ^^^^^^^^^^^^  ^^^^^^^^^^^^^  ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `super::*`
[INFO] [stdout]   --> src/fpsc/mod.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |     use super::*;
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::fpsc::producer_cosumer::ConsumerBuf`
[INFO] [stdout]   --> src/fpsc/mod.rs:39:9
[INFO] [stdout]    |
[INFO] [stdout] 39 |     use crate::fpsc::producer_cosumer::ConsumerBuf;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constants::ZERO_HASH`
[INFO] [stdout]  --> src/hash.rs:9:13
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::{constants::ZERO_HASH, herrors::HError}; 
[INFO] [stdout]   |             ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `core::time`
[INFO] [stdout]  --> src/block.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use core::time;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `self`
[INFO] [stdout]  --> src/block.rs:7:24
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::uuidbytes::{self, UuidBytes};
[INFO] [stdout]   |                        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ChainLimit`
[INFO] [stdout]  --> src/block.rs:8:32
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::chain::{BlockChain, ChainLimit};
[INFO] [stdout]   |                                ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `RwLockReadGuard`, `RwLockWriteGuard`, and `RwLock`
[INFO] [stdout]  --> src/keeper.rs:3:19
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::sync::{RwLock, RwLockReadGuard, RwLockWriteGuard};
[INFO] [stdout]   |                   ^^^^^^  ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `async_trait::async_trait`
[INFO] [stdout]  --> src/keeper.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use async_trait::async_trait;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]  --> src/keeper.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::collections::HashMap;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `DerefMut` and `Deref`
[INFO] [stdout]  --> src/keeper.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::ops::{Deref, DerefMut};
[INFO] [stdout]   |                ^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/keeper.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::sync::Arc;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AtomicU32` and `Ordering::Relaxed`
[INFO] [stdout]  --> src/keeper.rs:8:25
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU32, Ordering::Relaxed};
[INFO] [stdout]   |                         ^^^^^^^^^  ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DigestBlockArgs`
[INFO] [stdout]   --> src/keeper.rs:10:46
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::block::{Block, Digester, Carrier, DigestBlockArgs};
[INFO] [stdout]    |                                              ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::herrors::HError`
[INFO] [stdout]   --> src/keeper.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::herrors::HError;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ChainInfoBuilder`, `ChainInfo`, and `ChainRef`
[INFO] [stdout]   --> src/keeper.rs:12:39
[INFO] [stdout]    |
[INFO] [stdout] 12 | use crate::chain::{BlockChain, Chain, ChainInfo, ChainInfoBuilder, ChainRef, ChainLimit,
[INFO] [stdout]    |                                       ^^^^^^^^^  ^^^^^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::sync::Arc`
[INFO] [stdout]  --> src/utils/utils.rs:5:9
[INFO] [stdout]   |
[INFO] [stdout] 5 |     use std::sync::Arc;
[INFO] [stdout]   |         ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `random`
[INFO] [stdout]  --> src/utils/utils.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 |     use rand::{Rng, random};
[INFO] [stdout]   |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Mutex` and `RwLock`
[INFO] [stdout]  --> src/utils/utils.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 |     use tokio::sync::{Mutex, RwLock};
[INFO] [stdout]   |                       ^^^^^  ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Carrier` and `Digester`
[INFO] [stdout]   --> src/utils/utils.rs:12:31
[INFO] [stdout]    |
[INFO] [stdout] 12 |     use crate::block::{Block, Carrier, DataBlock, DataBlockArgs, DigestBlock, Digester};
[INFO] [stdout]    |                               ^^^^^^^                                         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Main`
[INFO] [stdout]   --> src/utils/utils.rs:13:55
[INFO] [stdout]    |
[INFO] [stdout] 13 |     use crate::chain::{BlockChain, Chain, ChainLimit, Main};
[INFO] [stdout]    |                                                       ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::keeper::ChainKeeper`
[INFO] [stdout]   --> src/utils/utils.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 15 |     use crate::keeper::ChainKeeper;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncHandler` and `AsyncRegister`
[INFO] [stdout]   --> src/utils/utils.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |     use crate::network::{AsyncHandler, AsyncPayloadHandler, AsyncRegister, UdpConnection};
[INFO] [stdout]    |                          ^^^^^^^^^^^^                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `AsyncRead`, `AsyncWriteExt`, and `AsyncWrite`
[INFO] [stdout]  --> src/archive.rs:3:17
[INFO] [stdout]   |
[INFO] [stdout] 3 | use tokio::io::{AsyncRead, AsyncReadExt, AsyncWrite, AsyncWriteExt};
[INFO] [stdout]   |                 ^^^^^^^^^                ^^^^^^^^^^  ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `mpsc` and `oneshot`
[INFO] [stdout]    --> src/req_resp.rs:244:23
[INFO] [stdout]     |
[INFO] [stdout] 244 |     use tokio::sync::{oneshot, mpsc};
[INFO] [stdout]     |                       ^^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0046]: not all trait items implemented, missing: `new`, `set_nodeinfo`, `nodeinfo`, `set_sign_handle`, `sign_handle`, `friends`
[INFO] [stdout]    --> src/utils/utils.rs:29:5
[INFO] [stdout]     |
[INFO] [stdout]  29 |     impl NodeAppend for FakerNomalNode {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ missing `new`, `set_nodeinfo`, `nodeinfo`, `set_sign_handle`, `sign_handle`, `friends` in implementation
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/nodes/node.rs:146:5
[INFO] [stdout]     |
[INFO] [stdout] 146 |     async fn new() -> Self;
[INFO] [stdout]     |     ----------------------- `new` from trait
[INFO] [stdout] 147 |     ///set node's nodeinfo
[INFO] [stdout] 148 |     fn set_nodeinfo(&mut self, nodeinfo: NodeInfo);
[INFO] [stdout]     |     ----------------------------------------------- `set_nodeinfo` from trait
[INFO] [stdout] 149 |     ///get node's nodeinfo
[INFO] [stdout] 150 |     fn nodeinfo(&self) -> Result<&NodeInfo, HError>;
[INFO] [stdout]     |     ------------------------------------------------ `nodeinfo` from trait
[INFO] [stdout] 151 |     ///set node's sign_handle
[INFO] [stdout] 152 |     fn set_sign_handle(&mut self, sign_handle: SignHandle);
[INFO] [stdout]     |     ------------------------------------------------------- `set_sign_handle` from trait
[INFO] [stdout] 153 |     ///get node's sign_handle
[INFO] [stdout] 154 |     fn sign_handle(&self) -> Result<&SignHandle, HError>;
[INFO] [stdout]     |     ----------------------------------------------------- `sign_handle` from trait
[INFO] [stdout] 155 |     ///get node's friends
[INFO] [stdout] 156 |     fn friends(&self) -> Result<&HashMap<HashValue, NodeInfo>, HError>;
[INFO] [stdout]     |     ------------------------------------------------------------------- `friends` from trait
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0782]: expected a type, found a trait
[INFO] [stdout]   --> src/utils/utils.rs:38:34
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub async fn faker_node() -> Node {
[INFO] [stdout]    |                                  ^^^^
[INFO] [stdout]    |
[INFO] [stdout] help: you can add the `dyn` keyword if you want a trait object
[INFO] [stdout]    |
[INFO] [stdout] 38 |     pub async fn faker_node() -> dyn Node {
[INFO] [stdout]    |                                  +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Chain`
[INFO] [stdout]   --> src/network/protocol.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::chain::{Chain, BlockChain};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]   --> src/network/protocol.rs:13:31
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/db.rs:319:24
[INFO] [stdout]     |
[INFO] [stdout] 319 |             if let Err(e) = meta_iterator {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bundle_file`
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bundle_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain`
[INFO] [stdout]    --> src/db.rs:347:35
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uuid`
[INFO] [stdout]    --> src/db.rs:356:35
[INFO] [stdout]     |
[INFO] [stdout] 356 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_uuid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         unsafe {self.ringbuf.capacity() }
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let capacity = self.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:235:41
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:238:44
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                            ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `CentralNode<B, D>` is more private than the item `Nodebuilder::<B, D>::build`
[INFO] [stdout]    --> src/nodes/center.rs:135:5
[INFO] [stdout]     |
[INFO] [stdout] 135 |     pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Nodebuilder::<B, D>::build` is reachable at visibility `pub(in crate::nodes)`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `CentralNode<B, D>` is only usable at visibility `pub(self)`
[INFO] [stdout]    --> src/nodes/center.rs:19:1
[INFO] [stdout]     |
[INFO] [stdout]  19 | struct CentralNode <B, D> 
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `HError` is never used
[INFO] [stdout]  --> src/herrors.rs:9:10
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub enum HError {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PipeError` is never used
[INFO] [stdout]   --> src/herrors.rs:81:10
[INFO] [stdout]    |
[INFO] [stdout] 81 | pub enum PipeError {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init` is never used
[INFO] [stdout]    --> src/herrors.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout] 100 | pub fn logger_init() {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_with_level` is never used
[INFO] [stdout]    --> src/herrors.rs:105:4
[INFO] [stdout]     |
[INFO] [stdout] 105 | fn logger_init_with_level(level: log::LevelFilter) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_info` is never used
[INFO] [stdout]    --> src/herrors.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn logger_init_above_info() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:117:8
[INFO] [stdout]     |
[INFO] [stdout] 117 | pub fn logger_init_above_debug() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_trace` is never used
[INFO] [stdout]    --> src/herrors.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn logger_init_above_trace() {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_init_above_error` is never used
[INFO] [stdout]    --> src/herrors.rs:127:8
[INFO] [stdout]     |
[INFO] [stdout] 127 | pub fn logger_init_above_error() {  
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_info` is never used
[INFO] [stdout]    --> src/herrors.rs:134:8
[INFO] [stdout]     |
[INFO] [stdout] 134 | pub fn logger_info(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_error` is never used
[INFO] [stdout]    --> src/herrors.rs:138:8
[INFO] [stdout]     |
[INFO] [stdout] 138 | pub fn logger_error(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_error_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:141:8
[INFO] [stdout]     |
[INFO] [stdout] 141 | pub fn logger_error_with_error(error: &HError) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug` is never used
[INFO] [stdout]    --> src/herrors.rs:144:8
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub fn logger_debug(msg: &str) {
[INFO] [stdout]     |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_debug_with_error` is never used
[INFO] [stdout]    --> src/herrors.rs:147:8
[INFO] [stdout]     |
[INFO] [stdout] 147 | pub fn logger_debug_with_error(error: &HError) {   
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `logger_result` is never used
[INFO] [stdout]    --> src/herrors.rs:151:8
[INFO] [stdout]     |
[INFO] [stdout] 151 | pub fn logger_result<T>(result: Result<T, HError>) -> Option<T>
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DataBase` is never used
[INFO] [stdout]   --> src/db.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait DataBase {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Meta` is never used
[INFO] [stdout]   --> src/db.rs:38:11
[INFO] [stdout]    |
[INFO] [stdout] 38 | pub trait Meta {
[INFO] [stdout]    |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaData` is never constructed
[INFO] [stdout]   --> src/db.rs:44:12
[INFO] [stdout]    |
[INFO] [stdout] 44 | pub struct MetaData {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/db.rs:56:12
[INFO] [stdout]     |
[INFO] [stdout]  54 | impl MetaData {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  55 |     ///create a new meta data with the given name and uuid.
[INFO] [stdout]  56 |     pub fn new(name: String, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  61 |     pub fn encode_into(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  76 |     pub fn decode_from(buffer: &[u8]) -> Result<MetaData, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |     async fn save_meta_to_file(&self, path: &PathBuf) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     async fn get_one_meta_from_file(file_stream: &mut File) -> Result<(MetaData, usize), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 130 |     pub fn set_name(mut self, name: String) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn set_uuid(mut self, uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     pub fn uuid(&self) -> UuidBytes {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |     pub fn name(&self) -> &String {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MetaDataIterator` is never constructed
[INFO] [stdout]    --> src/db.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 164 | pub struct MetaDataIterator {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `reset`, and `next` are never used
[INFO] [stdout]    --> src/db.rs:172:18
[INFO] [stdout]     |
[INFO] [stdout] 170 | impl MetaDataIterator {
[INFO] [stdout]     | --------------------- associated items in this implementation
[INFO] [stdout] 171 |     ///create a new MetaDataIterator
[INFO] [stdout] 172 |     pub async fn new(file_path: PathBuf) -> Result<Self, HError> {
[INFO] [stdout]     |                  ^^^
[INFO] [stdout] ...
[INFO] [stdout] 189 |     pub fn reset(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 198 |     async fn next(&mut self) -> Option<Result<MetaData, HError>> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FileDataBase` is never constructed
[INFO] [stdout]    --> src/db.rs:223:12
[INFO] [stdout]     |
[INFO] [stdout] 223 | pub struct FileDataBase{
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/db.rs:234:12
[INFO] [stdout]     |
[INFO] [stdout] 229 | impl FileDataBase {
[INFO] [stdout]     | ----------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 234 |     pub fn new(data_absolute_dir_opt: Option<String>) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_BUNDLE_FILE` is never used
[INFO] [stdout]    --> src/db.rs:365:7
[INFO] [stdout]     |
[INFO] [stdout] 365 | const DEFAULT_BUNDLE_FILE: &str = "chains.bundle";
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Bundle` is never constructed
[INFO] [stdout]    --> src/db.rs:378:12
[INFO] [stdout]     |
[INFO] [stdout] 378 | pub struct Bundle <B>
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `default_new`, `update_description_with_chain`, `save_to_file`, `save_chains_to_bundle`, `encode_to_stream`, and `load_chains_from_bundle` are never used
[INFO] [stdout]    --> src/db.rs:391:12
[INFO] [stdout]     |
[INFO] [stdout] 388 | / impl <B> Bundle <B> 
[INFO] [stdout] 389 | |     where B: Block + Encode + Decode<()> + Send + Unpin,
[INFO] [stdout]     | |________________________________________________________- associated items in this implementation
[INFO] [stdout] 390 |   {
[INFO] [stdout] 391 |       pub fn default_new() -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 |       fn update_description_with_chain(&mut self, chain: &BlockChain<B>) 
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 437 |       pub async fn save_to_file(&mut self, chain: BlockChain<B> ) 
[INFO] [stdout]     |                    ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 469 |       async fn save_chains_to_bundle(&mut self, chains:& Vec<BlockChain<B>>)
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 501 |       async fn encode_to_stream<R> (
[INFO] [stdout]     |                ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 540 |       pub async fn load_chains_from_bundle(&mut self) 
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Signal` is never used
[INFO] [stdout]  --> src/network/signal.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub enum Signal {
[INFO] [stdout]   |          ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_accept_result` is never used
[INFO] [stdout]   --> src/network/signal.rs:12:12
[INFO] [stdout]    |
[INFO] [stdout] 10 | impl Signal {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 11 |     ///create a new listen result signal
[INFO] [stdout] 12 |     pub fn from_accept_result( listen_result: (TcpStream, SocketAddr)) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `UdpConnection` is never used
[INFO] [stdout]   --> src/network/udp.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub trait UdpConnection: Send + Sync {
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `udp_send_to` is never used
[INFO] [stdout]    --> src/network/udp.rs:205:18
[INFO] [stdout]     |
[INFO] [stdout] 205 |     pub async fn udp_send_to(
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Test` is never constructed
[INFO] [stdout]    --> src/network/udp.rs:231:12
[INFO] [stdout]     |
[INFO] [stdout] 231 |     struct Test;
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Network` is never used
[INFO] [stdout]  --> src/network/network.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub trait Network: UdpConnection + Send + Sync
[INFO] [stdout]   |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NetworkState` is never used
[INFO] [stdout]   --> src/network/network.rs:18:10
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum NetworkState {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NetworkHandler` is never constructed
[INFO] [stdout]   --> src/network/network.rs:25:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub struct NetworkHandler {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `SignatureBytes` is never used
[INFO] [stdout]   --> src/network/protocol.rs:20:6
[INFO] [stdout]    |
[INFO] [stdout] 20 | type SignatureBytes = [u8; 64];
[INFO] [stdout]    |      ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Header` is never constructed
[INFO] [stdout]   --> src/network/protocol.rs:26:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub struct Header {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/network/protocol.rs:35:8
[INFO] [stdout]     |
[INFO] [stdout]  34 | impl Header {
[INFO] [stdout]     | ----------- associated items in this implementation
[INFO] [stdout]  35 |     fn new(msg_length: u32, signature: SignatureBytes, public_key: HashValue) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  44 |     pub fn header_size() -> usize {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  50 |     pub fn encode_into_slice(&self, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  87 |     fn decode_from_slice  (data: &[u8]) -> Result<Header, HError> 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 113 |     pub async fn from_stream <T> ( stream: &mut T) -> Result<Header, HError> 
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 125 |     pub async fn into_stream<T>(&self, stream: &mut T) -> Result<(), HError> 
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn caculate_encode_size(&self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 152 |     fn verify_header(&self, data: &[u8]) -> Result<(), HError> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Payload` is never used
[INFO] [stdout]    --> src/network/protocol.rs:162:10
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub enum Payload
[INFO] [stdout]     |          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from` is never used
[INFO] [stdout]    --> src/network/protocol.rs:184:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | impl Payload {
[INFO] [stdout]     | ------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 184 |     pub fn from(msg: Message) -> Payload {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestInfo` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:191:12
[INFO] [stdout]     |
[INFO] [stdout] 191 | pub struct RequestInfo {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VoteBlockArgs` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:199:12
[INFO] [stdout]     |
[INFO] [stdout] 199 | pub struct VoteBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/protocol.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 211 | impl VoteBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 212 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `VoteBlock` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:244:12
[INFO] [stdout]     |
[INFO] [stdout] 244 | pub struct VoteBlock {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `private_new` and `new` are never used
[INFO] [stdout]    --> src/network/protocol.rs:269:8
[INFO] [stdout]     |
[INFO] [stdout] 268 | impl VoteBlock {
[INFO] [stdout]     | -------------- associated functions in this implementation
[INFO] [stdout] 269 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 302 |     pub fn new(args: VoteBlockArgs) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockRec` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:414:12
[INFO] [stdout]     |
[INFO] [stdout] 414 | pub struct BlockRec {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Message` is never constructed
[INFO] [stdout]    --> src/network/protocol.rs:422:12
[INFO] [stdout]     |
[INFO] [stdout] 422 | pub struct Message {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/network/protocol.rs:435:12
[INFO] [stdout]     |
[INFO] [stdout] 434 | impl Message {
[INFO] [stdout]     | ------------ associated items in this implementation
[INFO] [stdout] 435 |     pub fn new(sender: HashValue, receiver: HashValue, payload: Payload ) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 445 |     fn new_with_zero() -> Self{
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 458 |     fn decode_from_slice_with_header(my_name: &HashValue, slice: &[u8], header: &Header) 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 496 |     pub fn decode_from_slice(my_name: &HashValue, slice: &[u8]) -> Result<Self, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 528 |     pub fn encode_into_slice(&self, identity:&mut Identity, buffer: &mut [u8]) -> Result<usize, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 564 |     pub async fn encode(&self, sign_handle: &SignHandle, buffer: &mut [u8] )
[INFO] [stdout]     |                  ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 603 |     pub async fn into_stream<S> (&self, identity: &mut Identity, stream: &mut S) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 617 |     async fn from_stream <S>  (my_name: &HashValue, stream: &mut S) -> Result<Message, HError> 
[INFO] [stdout]     |              ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `PayloadTypes` is never used
[INFO] [stdout]   --> src/network/register.rs:26:10
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub enum PayloadTypes {
[INFO] [stdout]    |          ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `from_payload` is never used
[INFO] [stdout]   --> src/network/register.rs:34:12
[INFO] [stdout]    |
[INFO] [stdout] 32 | impl PayloadTypes {
[INFO] [stdout]    | ----------------- associated function in this implementation
[INFO] [stdout] 33 |     ///return a PayloadTypes from a Payload
[INFO] [stdout] 34 |     pub fn from_payload(payload: &Payload) -> Self {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `AsyncHandler` is never used
[INFO] [stdout]   --> src/network/register.rs:51:11
[INFO] [stdout]    |
[INFO] [stdout] 51 | pub trait AsyncHandler {
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncRegister` is never constructed
[INFO] [stdout]    --> src/network/register.rs:107:12
[INFO] [stdout]     |
[INFO] [stdout] 107 | pub struct AsyncRegister {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `handle` are never used
[INFO] [stdout]    --> src/network/register.rs:119:19
[INFO] [stdout]     |
[INFO] [stdout] 118 | impl AsyncRegister {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout] 119 |     pub(super) fn new() -> Self {
[INFO] [stdout]     |                   ^^^
[INFO] [stdout] ...
[INFO] [stdout] 127 |     pub(super) async fn handle(&self, payload: Payload) -> Result<Payload, HError> {
[INFO] [stdout]     |                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncPayloadHandler` is never constructed
[INFO] [stdout]    --> src/network/register.rs:145:12
[INFO] [stdout]     |
[INFO] [stdout] 145 | pub struct AsyncPayloadHandler {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:150:12
[INFO] [stdout]     |
[INFO] [stdout] 149 | impl AsyncPayloadHandler {
[INFO] [stdout]     | ------------------------ associated function in this implementation
[INFO] [stdout] 150 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Register` is never constructed
[INFO] [stdout]    --> src/network/register.rs:269:12
[INFO] [stdout]     |
[INFO] [stdout] 269 | pub struct Register {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `reg` and `new` are never used
[INFO] [stdout]    --> src/network/register.rs:275:8
[INFO] [stdout]     |
[INFO] [stdout] 273 | impl Register {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 274 |     /// register a handler for a specific payload type.
[INFO] [stdout] 275 |     fn reg(
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 286 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HandlerContext` is never constructed
[INFO] [stdout]    --> src/network/register.rs:293:12
[INFO] [stdout]     |
[INFO] [stdout] 293 | pub struct HandlerContext {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `get_request_worker`, and `send` are never used
[INFO] [stdout]    --> src/network/register.rs:298:12
[INFO] [stdout]     |
[INFO] [stdout] 297 | impl HandlerContext {
[INFO] [stdout]     | ------------------- associated items in this implementation
[INFO] [stdout] 298 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 304 |     pub fn get_request_worker(&self, payload_type: PayloadTypes) -> Option<RequestWorker<Payload>> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 308 |     async fn send(&self, payload: Payload) -> Result<Response<Payload>, HError> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SyncHandler` is never used
[INFO] [stdout]    --> src/network/register.rs:321:11
[INFO] [stdout]     |
[INFO] [stdout] 321 | pub trait SyncHandler {
[INFO] [stdout]     |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `PayloadHandler` is never constructed
[INFO] [stdout]    --> src/network/register.rs:339:12
[INFO] [stdout]     |
[INFO] [stdout] 339 | pub struct PayloadHandler {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/network/register.rs:344:8
[INFO] [stdout]     |
[INFO] [stdout] 343 | impl PayloadHandler {
[INFO] [stdout]     | ------------------- associated function in this implementation
[INFO] [stdout] 344 |     fn new() -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Context` is never constructed
[INFO] [stdout]   --> src/network/handlers.rs:15:12
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Context {
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Handler` is never used
[INFO] [stdout]   --> src/network/handlers.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Handler <'context> {
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `AsyncPayloadHander` is never constructed
[INFO] [stdout]   --> src/network/handlers.rs:34:8
[INFO] [stdout]    |
[INFO] [stdout] 34 | struct AsyncPayloadHander <'context>
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NodeInfo` is never constructed
[INFO] [stdout]   --> src/nodes/node.rs:31:12
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub struct NodeInfo {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/node.rs:59:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl NodeInfo {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  58 |     ///create a new empty nodeinfo, set all NONE value
[INFO] [stdout]  59 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  74 |     pub fn name(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  85 |     pub fn address(&self) -> Result<Vec<SocketAddr>, HError> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  96 |     pub fn caller(&self) -> Result<HashValue, HError> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 107 |     pub fn reputation(&self) -> Result<Reputation, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 118 |     pub fn last_conn(&self) -> Result<u64, HError> {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 129 |     pub fn last_state(&self) -> Result<NodeState, HError> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `NodeAppend` is never used
[INFO] [stdout]    --> src/nodes/node.rs:144:11
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub trait NodeAppend {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Node` is never used
[INFO] [stdout]    --> src/nodes/node.rs:163:11
[INFO] [stdout]     |
[INFO] [stdout] 163 | pub trait Node: UdpConnection + Sized + NodeAppend{       
[INFO] [stdout]     |           ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Reputation` is never constructed
[INFO] [stdout]    --> src/nodes/node.rs:701:12
[INFO] [stdout]     |
[INFO] [stdout] 701 | pub struct Reputation {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/nodes/node.rs:706:12
[INFO] [stdout]     |
[INFO] [stdout] 705 | impl Reputation {
[INFO] [stdout]     | --------------- associated function in this implementation
[INFO] [stdout] 706 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `NodeState` is never used
[INFO] [stdout]    --> src/nodes/node.rs:716:10
[INFO] [stdout]     |
[INFO] [stdout] 716 | pub enum NodeState {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]    --> src/nodes/node.rs:726:6
[INFO] [stdout]     |
[INFO] [stdout] 726 | type NodeName = HashValue;
[INFO] [stdout]     |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `msg_delivery` is never used
[INFO] [stdout]    --> src/nodes/node.rs:663:18
[INFO] [stdout]     |
[INFO] [stdout] 663 |     pub async fn msg_delivery(
[INFO] [stdout]     |                  ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]   --> src/nodes/center.rs:13:6
[INFO] [stdout]    |
[INFO] [stdout] 13 | type NodeName = HashValue;
[INFO] [stdout]    |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Central` is never used
[INFO] [stdout]   --> src/nodes/center.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Central {
[INFO] [stdout]    |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `CentralNode` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | struct CentralNode <B, D> 
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/center.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | / impl <B, D> CentralNode <B, D>
[INFO] [stdout] 40 | |     where B: Block + Carrier,
[INFO] [stdout] 41 | |           D: Block + Digester,
[INFO] [stdout]    | |______________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 45 |       fn new(name: NodeName, address: String) -> Self{
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nodebuilder` is never constructed
[INFO] [stdout]   --> src/nodes/center.rs:64:12
[INFO] [stdout]    |
[INFO] [stdout] 64 | pub struct Nodebuilder<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/nodes/center.rs:80:12
[INFO] [stdout]     |
[INFO] [stdout]  76 | / impl <B, D> Nodebuilder<B, D> 
[INFO] [stdout]  77 | |     where B: Block + Carrier,
[INFO] [stdout]  78 | |           D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout]  79 |   {
[INFO] [stdout]  80 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout]  91 |       pub fn name(&mut self, name: NodeName) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |       pub fn address(&mut self, address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 100 |       pub fn center_address(&mut self, center_address: String) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 105 |       pub fn executor(&mut self, executor: ChainExecutor<B, D>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |       pub fn reputation(&mut self, reputation: Reputation) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 114 |       pub fn friends (&mut self, friends: Option<HashMap< NodeName, NormalNode<B, D>>>) -> &mut Self {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 122 |       fn check_fields<T>(&self, option: &Option<T>, fild_name: &str)-> Result<(), HError> {
[INFO] [stdout]     |          ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn build(self) -> Result<CentralNode<B, D>, HError> 
[INFO] [stdout]     |              ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `NodeName` is never used
[INFO] [stdout]  --> src/nodes/normal.rs:9:6
[INFO] [stdout]   |
[INFO] [stdout] 9 | type NodeName = HashValue;
[INFO] [stdout]   |      ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `NormalNode` is never constructed
[INFO] [stdout]   --> src/nodes/normal.rs:11:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct NormalNode<B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/normal.rs:37:8
[INFO] [stdout]    |
[INFO] [stdout] 32 | / impl <B, D> NormalNode <B, D>
[INFO] [stdout] 33 | |     where B: Block + Carrier,
[INFO] [stdout] 34 | |           D: Block + Digester
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 37 |       fn new(name: NodeName, capacity: usize) -> Self {
[INFO] [stdout]    |          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignRequest` is never constructed
[INFO] [stdout]   --> src/nodes/identity.rs:17:12
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub struct SignRequest {
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/nodes/identity.rs:27:8
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl SignRequest {
[INFO] [stdout]    | ---------------- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 27 |     fn new(bytes_vec: Vec<u8>, response: oneshot::Sender<Result<[u8; 64], HError>>) -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SignHandle` is never constructed
[INFO] [stdout]   --> src/nodes/identity.rs:54:12
[INFO] [stdout]    |
[INFO] [stdout] 54 | pub struct SignHandle {
[INFO] [stdout]    |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `spawn_new`, `verify`, `send`, `public_key_bytes`, and `sign` are never used
[INFO] [stdout]    --> src/nodes/identity.rs:79:18
[INFO] [stdout]     |
[INFO] [stdout]  59 | impl SignHandle {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  79 |     pub async fn spawn_new(mut identity: Identity, capacity: usize, cancel_token: CancellationToken) -> 
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 134 |     pub fn verify(&self, message: &[u8], signature: &[u8; 64]) -> Result<(), HError> 
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 146 |     pub async fn send(&self, sign_request: SignRequest) -> Result<(), HError>
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub fn public_key_bytes(&self) -> [u8;32]
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 179 |     pub async fn sign(&self, bytes: &[u8]) -> 
[INFO] [stdout]     |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Identity` is never constructed
[INFO] [stdout]    --> src/nodes/identity.rs:210:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | pub struct Identity{
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `create_keypair`, `new`, `sign_msg`, `public_key_to_bytes`, and `verify_signature_bytes` are never used
[INFO] [stdout]    --> src/nodes/identity.rs:217:8
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Identity {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] 216 |     /// a helper function for Identity::new()
[INFO] [stdout] 217 |     fn create_keypair() -> (VerifyingKey, SigningKey) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 227 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 237 |     pub fn sign_msg(&mut self, message: &[u8]) -> Result<[u8; 64], HError> {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 248 |     pub fn public_key_to_bytes(&self) -> [u8; 32] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 261 |     pub fn verify_signature_bytes(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Executor` is never used
[INFO] [stdout]   --> src/executor.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Executor: Archiver {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainExecutor` is never constructed
[INFO] [stdout]   --> src/executor.rs:33:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub struct ChainExecutor < B, D> 
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/executor.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 43 | / impl < B, D> ChainExecutor <B, D> 
[INFO] [stdout] 44 | |     where B: Block + Carrier,
[INFO] [stdout] 45 | |           D: Block + Digester ,
[INFO] [stdout]    | |_______________________________- associated function in this implementation
[INFO] [stdout] 46 |   {
[INFO] [stdout] 47 |       pub  fn new(limit: ChainLimit) -> Self
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Location` is never used
[INFO] [stdout]  --> src/constants.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type Location = usize;
[INFO] [stdout]   |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `Bytes` is never used
[INFO] [stdout]  --> src/constants.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub type Bytes = Vec<u8>;
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_HASH` is never used
[INFO] [stdout]  --> src/constants.rs:7:11
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub const ZERO_HASH:[u8; 32] = [0; 32];
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U64` is never used
[INFO] [stdout]  --> src/constants.rs:8:11
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub const ZERO_U64: u64 = 0 ;
[INFO] [stdout]   |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_UUID` is never used
[INFO] [stdout]  --> src/constants.rs:9:11
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub const ZERO_UUID: [u8; 16] = [0;16];
[INFO] [stdout]   |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `ZERO_U32` is never used
[INFO] [stdout]   --> src/constants.rs:10:11
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub const ZERO_U32: u32 = 0;
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_PACKAGE` is never used
[INFO] [stdout]   --> src/constants.rs:13:11
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub const PATH_CACHE_PACKAGE: &str = "cache/packages";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `PATH_CACHE_BUNDLE` is never used
[INFO] [stdout]   --> src/constants.rs:14:11
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub const PATH_CACHE_BUNDLE: &str = "cache/bundles";
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub const BUFFER_SIZE: usize = 1024 * 32;
[INFO] [stdout]    |           ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub const UDP_SENDER_PORT: u16 = 8080;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:21:11
[INFO] [stdout]    |
[INFO] [stdout] 21 | pub const UDP_RECV_PORT: u16 = 8081;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_SENDER_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub const TCP_SENDER_PORT: u16 = 8088;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TCP_RECV_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:23:11
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub const TCP_RECV_PORT: u16 = 8089;
[INFO] [stdout]    |           ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_MSG_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub const MAX_MSG_SIZE: usize = 1024 * 1024; // 1MB
[INFO] [stdout]    |           ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_UDP_MSG_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:25:11
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub const MAX_UDP_MSG_SIZE: usize= 1024; // 1KB
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MTU_SIZE` is never used
[INFO] [stdout]   --> src/constants.rs:26:11
[INFO] [stdout]    |
[INFO] [stdout] 26 | pub const MTU_SIZE: usize = 1500; // 1500 bytes
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_CONNECTIONS` is never used
[INFO] [stdout]   --> src/constants.rs:27:11
[INFO] [stdout]    |
[INFO] [stdout] 27 | pub const MAX_CONNECTIONS: usize= 100; // maximum number of  tcp connections
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `UDP_CHECK_PORT` is never used
[INFO] [stdout]   --> src/constants.rs:28:11
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub const UDP_CHECK_PORT: u16 = 7070;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `TIME_MS_FOR_UNP_RECV` is never used
[INFO] [stdout]   --> src/constants.rs:29:11
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub const TIME_MS_FOR_UNP_RECV: u64 = 5000; // 5 seconds
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHANNEL_CAPACITY` is never used
[INFO] [stdout]   --> src/constants.rs:33:11
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub const CHANNEL_CAPACITY: usize = 1024;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MAX_FILE_NAME_LEN` is never used
[INFO] [stdout]   --> src/constants.rs:37:11
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub const MAX_FILE_NAME_LEN: usize = 128;
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Chain` is never used
[INFO] [stdout]   --> src/chain.rs:22:11
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub trait Chain  
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainLimit` is never constructed
[INFO] [stdout]    --> src/chain.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout] 200 | pub struct ChainLimit {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `max_len`, `time_gap`, `length_check`, `time_check`, and `default` are never used
[INFO] [stdout]    --> src/chain.rs:212:12
[INFO] [stdout]     |
[INFO] [stdout] 210 | impl ChainLimit {
[INFO] [stdout]     | --------------- associated items in this implementation
[INFO] [stdout] 211 |     ///create a new limit information for a chain.
[INFO] [stdout] 212 |     pub fn new(max_len: usize, time_gap: u64) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 220 |     pub fn max_len(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 225 |     pub fn time_gap(&self) -> u64 {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 229 |     pub fn length_check(&self, len: usize) -> Result<(), HError> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |     pub fn time_check<B>(&self, origin: u64, block: &B) -> Result<(), HError> 
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 263 |     pub fn default() -> Self {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BlockChain` is never constructed
[INFO] [stdout]    --> src/chain.rs:275:12
[INFO] [stdout]     |
[INFO] [stdout] 275 | pub struct BlockChain<B>
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:292:12
[INFO] [stdout]     |
[INFO] [stdout] 283 | / impl <B> BlockChain<B>
[INFO] [stdout] 284 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 292 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 303 |       pub fn block_verify(&self, block: &B) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 318 |       pub fn is_full(&self) -> bool {
[INFO] [stdout]     |              ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 326 |       pub fn add(&mut self, block: B) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |       fn empty_with_capacity(capacity: usize) -> Self {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 364 |       pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 381 |       pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 384 |       pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 387 |       pub fn init_iter(self) -> std::vec::IntoIter<B> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainRef` is never constructed
[INFO] [stdout]    --> src/chain.rs:429:12
[INFO] [stdout]     |
[INFO] [stdout] 429 | pub struct ChainRef<'a, B>
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:441:8
[INFO] [stdout]     |
[INFO] [stdout] 436 | / impl <'a, B> ChainRef<'a, B> 
[INFO] [stdout] 437 | |     where B: Block
[INFO] [stdout]     | |__________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 441 |       fn new(data: *const B, len: usize, time_origin: u64, time_gap: u64) -> Result<Self, HError>{
[INFO] [stdout]     |          ^^^
[INFO] [stdout] ...
[INFO] [stdout] 468 |       fn block_ref(&self, local_index: usize) -> Option<&B> {
[INFO] [stdout]     |          ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 486 |       pub fn  from_chain_by_index(
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 524 |       pub fn from_chain(chain: &'a BlockChain<B>) -> Result<Self, HError>
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 541 |       pub fn contain_hash(&self, hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 556 |       fn hash_select(&self, hash: HashValue) -> Option<B> 
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 572 |       pub fn contain_data_hash(&self, data_hash: HashValue) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 589 |       pub fn contain_uuid(&self, uuid: UuidBytes) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 606 |       pub fn contain_index(&self, index: usize) -> Option<usize>
[INFO] [stdout]     |              ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 623 |       pub fn len(&self) -> usize {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 628 |       pub fn as_slice(&self) -> &[B] {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 634 |       pub fn from_slice(slice: &[B]) -> Self {
[INFO] [stdout]     |              ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 644 |       pub fn into_vec(self) -> Vec<B> 
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Main` is never constructed
[INFO] [stdout]    --> src/chain.rs:668:12
[INFO] [stdout]     |
[INFO] [stdout] 668 | pub struct Main<D>
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_block` are never used
[INFO] [stdout]    --> src/chain.rs:676:12
[INFO] [stdout]     |
[INFO] [stdout] 673 | / impl <D> Main<D>
[INFO] [stdout] 674 | |     where D: Block + Digester,
[INFO] [stdout]     | |______________________________- associated items in this implementation
[INFO] [stdout] 675 |   {
[INFO] [stdout] 676 |       pub fn new(digest_id: u32, limit: ChainLimit) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 684 |       pub fn add_block(&mut self, block: D) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Sides` is never constructed
[INFO] [stdout]    --> src/chain.rs:735:12
[INFO] [stdout]     |
[INFO] [stdout] 735 | pub struct Sides<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `add_chain` are never used
[INFO] [stdout]    --> src/chain.rs:762:12
[INFO] [stdout]     |
[INFO] [stdout] 759 | / impl <B> Sides<B> 
[INFO] [stdout] 760 | |     where B: Block + Carrier,
[INFO] [stdout]     | |_____________________________- associated items in this implementation
[INFO] [stdout] 761 |   {
[INFO] [stdout] 762 |       pub fn new() -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 768 |       pub fn add_chain(&mut self, digest_id: u32, chain: BlockChain<B>) -> Result<(), HError> {
[INFO] [stdout]     |              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfo` is never constructed
[INFO] [stdout]    --> src/chain.rs:785:12
[INFO] [stdout]     |
[INFO] [stdout] 785 | pub struct ChainInfo <B>
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainInfoBuilder` is never constructed
[INFO] [stdout]    --> src/chain.rs:800:12
[INFO] [stdout]     |
[INFO] [stdout] 800 | pub struct ChainInfoBuilder {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/chain.rs:813:12
[INFO] [stdout]     |
[INFO] [stdout] 811 | impl  ChainInfoBuilder 
[INFO] [stdout]     | ---------------------- associated items in this implementation
[INFO] [stdout] 812 | {
[INFO] [stdout] 813 |     pub fn new() -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 825 |     pub fn build<B>(self) -> ChainInfo<B>
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 843 |     pub fn digest_id(mut self, digest_id: u32) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 851 |     pub fn index(mut self, start: u32, end: u32) -> Self {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 857 |     pub fn timestamp(mut self, start: u64, end: u64) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 863 |     pub fn hash(mut self, hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 869 |     pub fn merkle_root(mut self, merkle_root: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 875 |     pub fn data_uuid(mut self, data_uuid: UuidBytes) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 881 |     pub fn data_hash(mut self, data_hash: HashValue) -> Self {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `new` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:11:8
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub fn new <'a,C>(capacity: usize) -> (ProducerBuf<'a>, ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reuse_buf_from_consumer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:24:8
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub fn reuse_buf_from_consumer<C> (consumer: &mut ConsumerBuf<C>)
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `produce_to_producer` is never used
[INFO] [stdout]   --> src/fpsc/mod.rs:30:8
[INFO] [stdout]    |
[INFO] [stdout] 30 | pub fn produce_to_producer(producer: &mut ProducerBuf) 
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ProducerBuf` is never constructed
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct ProducerBuf <'a>
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `produce_all`, `produce`, `capacity`, `stream`, and `produce_from_stream` are never used
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:21:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | impl <'a> ProducerBuf <'a>
[INFO] [stdout]    | -------------------------- associated items in this implementation
[INFO] [stdout] 20 | {
[INFO] [stdout] 21 |     pub fn new(ringbuf: Ringbuf) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub async fn produce_all(&mut self, data: &[u8]) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 32 |     pub async fn produce(&mut self, data: &[u8]) -> Result<usize, HError> {
[INFO] [stdout]    |                  ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 37 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub fn stream<T>(&mut self, stream: T) -> &mut Self 
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub async fn produce_from_stream<S> (&mut self, stream: S) 
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ConsumerBuf` is never constructed
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:168:12
[INFO] [stdout]     |
[INFO] [stdout] 168 | pub struct ConsumerBuf<T>
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 177 | / impl <C> ConsumerBuf<C> 
[INFO] [stdout] 178 | |     where C: FnMut(&mut [u8])-> Result<(), HError>,
[INFO] [stdout] 179 | |         Self: Unpin
[INFO] [stdout]     | |___________________- associated items in this implementation
[INFO] [stdout] 180 |   {
[INFO] [stdout] 181 |       pub fn new(reader: Ringbuf) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 190 |       pub fn task(&mut self, task: C) -> &mut Self {
[INFO] [stdout]     |              ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 195 |       pub fn with_closure<'a>(capacity: usize, closure: C) -> (ProducerBuf<'a>, Self) {
[INFO] [stdout]     |              ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 206 |       pub fn capacity(&self) -> usize {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 212 |       fn clone_buf_state(&self) -> BufState {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |       fn set_buf_state(&mut self, state: BufState) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 224 |       fn wake_writer(&mut self) {
[INFO] [stdout]     |          ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 230 |       fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stdout]     |          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 241 |       pub async fn consume(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 252 |       pub async fn consume_all(&mut self) -> Result<usize, HError> {
[INFO] [stdout]     |                    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Inner` is never constructed
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:8:12
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct Inner {
[INFO] [stdout]   |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `BufState` is never used
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:19:10
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub enum BufState {
[INFO] [stdout]    |          ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:28:12
[INFO] [stdout]    |
[INFO] [stdout] 26 | impl  Inner
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 27 | {
[INFO] [stdout] 28 |     pub fn new(capacity: usize) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BufPtr` is never constructed
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct BufPtr {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Ringbuf` is never constructed
[INFO] [stdout]   --> src/fpsc/ringbuf.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout] 62 | pub struct Ringbuf{
[INFO] [stdout]    |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:69:12
[INFO] [stdout]     |
[INFO] [stdout]  66 | impl  Ringbuf
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout]  69 |     pub fn new(capacity: usize) -> (Self, Self) {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout]  81 |     pub fn get_mut_vec_buf(&mut self) -> &mut Vec<u8> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  88 |     pub fn clone_buf_state(&self) -> BufState {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout]  95 |     pub fn set_buf_state(&mut self, state: BufState) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub fn wake_writer(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 110 |     pub fn wake_reader(&mut self) {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 119 |     pub fn writer_waker_save(&mut self, writer_waker: Waker) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 126 |     pub fn reader_waker_save(&mut self, reader_waker: Waker) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 132 |     pub fn capacity(&self) -> usize {
[INFO] [stdout]     |            ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 138 |     pub fn len(&self) -> usize {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 145 |     pub fn reuse(&mut self) {
[INFO] [stdout]     |            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `HashValue` is never used
[INFO] [stdout]   --> src/hash.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub type HashValue = [u8; 32];
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Hasher` is never used
[INFO] [stdout]   --> src/hash.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub trait Hasher {
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/serializer.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | const  BUFFER_SIZE: usize = 1024 * 128;
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `BIGGEST_BUFFER_SIZE` is never used
[INFO] [stdout]   --> src/serializer.rs:13:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | const  BIGGEST_BUFFER_SIZE: usize = 1024 * BUFFER_SIZE;
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Serialize` is never used
[INFO] [stdout]   --> src/serializer.rs:17:11
[INFO] [stdout]    |
[INFO] [stdout] 17 | pub trait Serialize
[INFO] [stdout]    |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Serializer` is never constructed
[INFO] [stdout]    --> src/serializer.rs:322:12
[INFO] [stdout]     |
[INFO] [stdout] 322 | pub struct Serializer <T> 
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `get_data` are never used
[INFO] [stdout]    --> src/serializer.rs:335:12
[INFO] [stdout]     |
[INFO] [stdout] 329 | / impl  <T> Serializer <T> 
[INFO] [stdout] 330 | |     where T: Sized + Encode + Decode<()> + Send + Unpin 
[INFO] [stdout]     | |_______________________________________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 335 |       pub fn new(data: Option<T>) -> Self {
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 345 |       pub fn get_data(&self) -> Option<&T> {
[INFO] [stdout]     |              ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `size_to_align` is never used
[INFO] [stdout]    --> src/serializer.rs:397:19
[INFO] [stdout]     |
[INFO] [stdout] 397 |     pub(super) fn size_to_align(size: usize, align: usize) -> usize {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_all_from_stream` is never used
[INFO] [stdout]    --> src/serializer.rs:409:25
[INFO] [stdout]     |
[INFO] [stdout] 409 |     pub(super) async fn read_all_from_stream<R>(
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `save_size_header_into_slice` is never used
[INFO] [stdout]    --> src/serializer.rs:451:19
[INFO] [stdout]     |
[INFO] [stdout] 451 |     pub(super) fn save_size_header_into_slice(size: u32, dst: &mut [u8]) 
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pipe` is never constructed
[INFO] [stdout]  --> src/pipe.rs:6:12
[INFO] [stdout]   |
[INFO] [stdout] 6 | pub struct Pipe<T> {
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/pipe.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 11 | impl <T> Pipe<T> {
[INFO] [stdout]    | ---------------- associated items in this implementation
[INFO] [stdout] 12 |     //create a pipe with a given capacity
[INFO] [stdout] 13 |     pub fn new(capacity: usize) ->(Self, Self) {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub async fn send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub async fn recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn close(&mut self) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub async fn is_closed(&mut self) -> bool {
[INFO] [stdout]    |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 46 |     pub  fn try_recv(&mut self) -> Result<T, HError> {
[INFO] [stdout]    |             ^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn try_send(&mut self, value: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Block` is never used
[INFO] [stdout]   --> src/block.rs:15:11
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub trait Block 
[INFO] [stdout]    |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Digester` is never used
[INFO] [stdout]    --> src/block.rs:106:11
[INFO] [stdout]     |
[INFO] [stdout] 106 | pub trait Digester: Block {
[INFO] [stdout]     |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Carrier` is never used
[INFO] [stdout]    --> src/block.rs:118:11
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub trait Carrier : Block {
[INFO] [stdout]     |           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `BlockArgs` is never used
[INFO] [stdout]    --> src/block.rs:126:11
[INFO] [stdout]     |
[INFO] [stdout] 126 | pub trait BlockArgs {}
[INFO] [stdout]     |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBlockArgs` is never constructed
[INFO] [stdout]    --> src/block.rs:128:12
[INFO] [stdout]     |
[INFO] [stdout] 128 | pub struct DataBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/block.rs:137:12
[INFO] [stdout]     |
[INFO] [stdout] 135 | impl DataBlockArgs {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] 136 |     ///create a new args list for a new data block.
[INFO] [stdout] 137 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DigestBlockArgs` is never constructed
[INFO] [stdout]    --> src/block.rs:156:12
[INFO] [stdout]     |
[INFO] [stdout] 156 | pub struct DigestBlockArgs {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/block.rs:163:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl DigestBlockArgs {
[INFO] [stdout]     | -------------------- associated function in this implementation
[INFO] [stdout] 163 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataBlock` is never constructed
[INFO] [stdout]    --> src/block.rs:181:12
[INFO] [stdout]     |
[INFO] [stdout] 181 | pub struct DataBlock {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `private_new` is never used
[INFO] [stdout]    --> src/block.rs:198:8
[INFO] [stdout]     |
[INFO] [stdout] 197 | impl DataBlock {
[INFO] [stdout]     | -------------- associated function in this implementation
[INFO] [stdout] 198 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DigestBlock` is never constructed
[INFO] [stdout]    --> src/block.rs:317:12
[INFO] [stdout]     |
[INFO] [stdout] 317 | pub struct DigestBlock {
[INFO] [stdout]     |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `private_new` and `create` are never used
[INFO] [stdout]    --> src/block.rs:333:8
[INFO] [stdout]     |
[INFO] [stdout] 332 | impl DigestBlock {
[INFO] [stdout]     | ---------------- associated functions in this implementation
[INFO] [stdout] 333 |     fn private_new(
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 356 |     pub fn create(args: DigestBlockArgs ) -> Self {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Keeper` is never used
[INFO] [stdout]   --> src/keeper.rs:24:11
[INFO] [stdout]    |
[INFO] [stdout] 24 | pub trait Keeper: Send + Sync{
[INFO] [stdout]    |           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `ChainKeeper` is never constructed
[INFO] [stdout]   --> src/keeper.rs:69:12
[INFO] [stdout]    |
[INFO] [stdout] 69 | pub struct ChainKeeper  <B, D>
[INFO] [stdout]    |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/keeper.rs:85:13
[INFO] [stdout]    |
[INFO] [stdout] 77 | / impl <B, D> ChainKeeper<B, D>
[INFO] [stdout] 78 | |     where D: Block + Digester,
[INFO] [stdout] 79 | |           B: Block + Carrier,
[INFO] [stdout]    | |_____________________________- associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 85 |       pub  fn new(limit: ChainLimit) -> Self {
[INFO] [stdout]    |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `DataId` is never constructed
[INFO] [stdout]   --> src/archive.rs:14:12
[INFO] [stdout]    |
[INFO] [stdout] 14 | pub struct DataId {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Archiver` is never used
[INFO] [stdout]   --> src/archive.rs:20:11
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub trait Archiver {
[INFO] [stdout]    |           ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Request` is never constructed
[INFO] [stdout]  --> src/req_resp.rs:9:12
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub struct Request<T> {
[INFO] [stdout]   |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `send`, and `send_back` are never used
[INFO] [stdout]   --> src/req_resp.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl <T> Request<T> {
[INFO] [stdout]    | ------------------- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 19 |     fn new(data: T) -> (Self, Response<T>) {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 29 |     pub async fn send(data: T, worker: RequestWorker<T>) -> Result<Response<T>, HError>{
[INFO] [stdout]    |                  ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn send_back(self, data: T) -> Result<(), HError> {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Response` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:49:12
[INFO] [stdout]    |
[INFO] [stdout] 49 | pub struct Response<T> {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `response` is never used
[INFO] [stdout]   --> src/req_resp.rs:56:18
[INFO] [stdout]    |
[INFO] [stdout] 54 | impl <T> Response<T> {
[INFO] [stdout]    | -------------------- method in this implementation
[INFO] [stdout] 55 |     /// Wait for and return the response from the worker
[INFO] [stdout] 56 |     pub async fn response(self) -> Result<T, HError> {
[INFO] [stdout]    |                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RequestWorker` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:67:12
[INFO] [stdout]    |
[INFO] [stdout] 67 | pub struct RequestWorker<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `send_to_worker` is never used
[INFO] [stdout]   --> src/req_resp.rs:74:14
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl <T> RequestWorker<T> {
[INFO] [stdout]    | ------------------------- method in this implementation
[INFO] [stdout] 73 |     /// Internal method to send a request to the worker
[INFO] [stdout] 74 |     async fn send_to_worker(&self, req: Request<T>) -> Result<(), HError> {       
[INFO] [stdout]    |              ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `WorkReceiver` is never constructed
[INFO] [stdout]   --> src/req_resp.rs:85:12
[INFO] [stdout]    |
[INFO] [stdout] 85 | pub struct WorkReceiver<T> {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `recv_work`, and `recv_data` are never used
[INFO] [stdout]    --> src/req_resp.rs:92:8
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl <T> WorkReceiver<T> {
[INFO] [stdout]     | ------------------------ associated items in this implementation
[INFO] [stdout]  91 |     /// Create a new receiver wrapper
[INFO] [stdout]  92 |     fn new(receiver: mpsc::Receiver<Request<T>>) -> Self {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout]  97 |     pub async fn recv_work(&mut self) -> Option<Request<T>> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 102 |     pub async fn recv_data(&mut self) -> Result<T, HError> {
[INFO] [stdout]     |                  ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Worker` is never constructed
[INFO] [stdout]    --> src/req_resp.rs:118:12
[INFO] [stdout]     |
[INFO] [stdout] 118 | pub struct Worker<T> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new` and `run` are never used
[INFO] [stdout]    --> src/req_resp.rs:135:12
[INFO] [stdout]     |
[INFO] [stdout] 127 | / impl <T> Worker<T> 
[INFO] [stdout] 128 | |     where T: Send + 'static,
[INFO] [stdout]     | |____________________________- associated items in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 135 |       pub fn new(
[INFO] [stdout]     |              ^^^
[INFO] [stdout] ...
[INFO] [stdout] 157 |       pub async fn run(mut self, canc_token: CancellationToken ) -> Result<(),HError> {
[INFO] [stdout]     |                    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_channel` is never used
[INFO] [stdout]    --> src/req_resp.rs:232:8
[INFO] [stdout]     |
[INFO] [stdout] 232 | pub fn create_channel<T>(capacity: usize) -> 
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type alias `UuidBytes` is never used
[INFO] [stdout]  --> src/uuidbytes.rs:4:10
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub type UuidBytes = [u8; 16];
[INFO] [stdout]   |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Init` is never used
[INFO] [stdout]  --> src/uuidbytes.rs:7:12
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub trait  Init{
[INFO] [stdout]   |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:364:25
[INFO] [stdout]     |
[INFO] [stdout] 364 |     pub fn index_select(&self, range: (usize, usize))
[INFO] [stdout]     |                         ^^^^^ the lifetime is elided here
[INFO] [stdout] 365 |         -> Result<ChainRef<B>, HError>
[INFO] [stdout]     |                   ^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 365 |         -> Result<ChainRef<'_, B>, HError>
[INFO] [stdout]     |                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:381:17
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<B> {
[INFO] [stdout]     |                 ^^^^^     ^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 381 |     pub fn iter(&self) -> std::slice::Iter<'_, B> {
[INFO] [stdout]     |                                            +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/chain.rs:384:21
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<B> {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub fn iter_mut(&mut self) -> std::slice::IterMut<'_, B> {
[INFO] [stdout]     |                                                       +++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Chain`
[INFO] [stdout]   --> src/network/protocol.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::chain::{Chain, BlockChain};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Hasher`
[INFO] [stdout]   --> src/network/protocol.rs:13:31
[INFO] [stdout]    |
[INFO] [stdout] 13 | use crate::hash:: {HashValue, Hasher};
[INFO] [stdout]    |                               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Encode`
[INFO] [stdout]    --> src/network/protocol.rs:650:27
[INFO] [stdout]     |
[INFO] [stdout] 650 |     use bincode::{Decode, Encode};
[INFO] [stdout]     |                           ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Block`
[INFO] [stdout]   --> src/nodes/node.rs:11:20
[INFO] [stdout]    |
[INFO] [stdout] 11 | use crate::block::{Block, Carrier, Digester};
[INFO] [stdout]    |                    ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `AsyncReadExt`
[INFO] [stdout]  --> src/fpsc/ringbuf.rs:1:55
[INFO] [stdout]   |
[INFO] [stdout] 1 | use tokio::io::{AsyncWrite, AsyncRead, AsyncWriteExt, AsyncReadExt};
[INFO] [stdout]   |                                                       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `e`
[INFO] [stdout]    --> src/db.rs:319:24
[INFO] [stdout]     |
[INFO] [stdout] 319 |             if let Err(e) = meta_iterator {
[INFO] [stdout]     |                        ^ help: if this is intentional, prefix it with an underscore: `_e`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ----^^^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `bundle_file`
[INFO] [stdout]    --> src/db.rs:351:13
[INFO] [stdout]     |
[INFO] [stdout] 351 |         let mut bundle_file = self.bundle_file.clone();   
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_bundle_file`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `chain`
[INFO] [stdout]    --> src/db.rs:347:35
[INFO] [stdout]     |
[INFO] [stdout] 347 |     async fn save_chain<B>(&self, chain: &BlockChain<B>) -> Result<(), HError>
[INFO] [stdout]     |                                   ^^^^^ help: if this is intentional, prefix it with an underscore: `_chain`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `uuid`
[INFO] [stdout]    --> src/db.rs:356:35
[INFO] [stdout]     |
[INFO] [stdout] 356 |     async fn find_chain<B>(&self, uuid: UuidBytes) -> Option<BlockChain<B>>
[INFO] [stdout]     |                                   ^^^^ help: if this is intentional, prefix it with an underscore: `_uuid`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `find_min`
[INFO] [stdout]    --> src/db.rs:695:13
[INFO] [stdout]     |
[INFO] [stdout] 695 |         let find_min = *find_times.iter().min().unwrap();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_find_min`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/network/udp.rs:390:13
[INFO] [stdout]     |
[INFO] [stdout] 390 |         let mut client_id = Identity::new();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/nodes/node.rs:928:14
[INFO] [stdout]     |
[INFO] [stdout] 928 |         let (socket, new_name) = result.unwrap();
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `new_name`
[INFO] [stdout]    --> src/nodes/node.rs:928:22
[INFO] [stdout]     |
[INFO] [stdout] 928 |         let (socket, new_name) = result.unwrap();
[INFO] [stdout]     |                      ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_new_name`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `socket`
[INFO] [stdout]    --> src/nodes/node.rs:976:14
[INFO] [stdout]     |
[INFO] [stdout] 976 |         let (socket, new_name) = result.unwrap();
[INFO] [stdout]     |              ^^^^^^ help: if this is intentional, prefix it with an underscore: `_socket`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]     --> src/nodes/node.rs:1046:13
[INFO] [stdout]      |
[INFO] [stdout] 1046 |         let result = tokio::time::timeout(
[INFO] [stdout]      |             ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]   --> src/fpsc/producer_cosumer.rs:38:9
[INFO] [stdout]    |
[INFO] [stdout] 38 |         unsafe {self.ringbuf.capacity() }
[INFO] [stdout]    |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:254:13
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let capacity = self.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `capacity`
[INFO] [stdout]    --> src/fpsc/producer_cosumer.rs:388:13
[INFO] [stdout]     |
[INFO] [stdout] 388 |         let capacity = consumer.capacity();
[INFO] [stdout]     |             ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_capacity`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:235:41
[INFO] [stdout]     |
[INFO] [stdout] 235 |     fn poll_flush(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                         ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cx`
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:238:44
[INFO] [stdout]     |
[INFO] [stdout] 238 |     fn poll_shutdown(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll<Result<(), std::io::Error>> {
[INFO] [stdout]     |                                            ^^ help: if this is intentional, prefix it with an underscore: `_cx`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value captured by `nread` is never read
[INFO] [stdout]    --> src/fpsc/ringbuf.rs:328:17
[INFO] [stdout]     |
[INFO] [stdout] 328 |                 nread = reader.read(&mut read_buf[total..]).await.unwrap();
[INFO] [stdout]     |                 ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = help: did you mean to capture by reference instead?
[INFO] [stdout]     = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0046, E0782.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0046`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `history-chain` (lib test) due to 2 previous errors; 137 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea", kill_on_drop: false }`
[INFO] [stdout] 50e2631873102736e08c1d096aadd1230886380891ced491ef738573b62b67ea
